home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #1 / Ham Radio 2000.iso / ham2000 / tcp_ip / tnos / tnos100s / hardware.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-06-22  |  2.6 KB  |  103 lines

  1. #ifndef    _PC_H
  2. #define    _PC_H
  3. #define _HARDWARE_H
  4.  
  5. #ifndef    _GLOBAL_H
  6. #include "global.h"
  7. #endif
  8.  
  9. #ifndef _SESSION_H
  10. #include "session.h"
  11. #endif
  12.  
  13. #ifdef TNOS_68K
  14. #include <curses.h>
  15. #undef echo
  16. #undef raw
  17. #undef refresh
  18. #undef proto
  19. #endif
  20.  
  21. #define    NSW    10    /* Number of stopwatch "memories" */
  22.  
  23. struct stopwatch {
  24.     long calls;
  25.     int16 maxval;
  26.     int16 minval;
  27. };
  28. struct screen {
  29. #ifndef TNOS_68K
  30.     char *save;        /* Screen save buffer */
  31.     int row;        /* Saved cursor location */
  32.     int col;
  33. #else
  34.     WINDOW *win;        /* active WINDOW */
  35.     WINDOW *textwin;    /* text area WINDOW */
  36.     WINDOW *splitwin;    /* split screen input WINDOW */
  37.     WINDOW *statwin;    /* status area WINDOW */
  38. #endif
  39.     unsigned char attr;
  40.     unsigned char statline;
  41. };
  42. #define    NULLSCREEN    (struct screen *)0
  43.  
  44. extern struct stopwatch Sw[];
  45. extern int16 Intstk[];    /* Interrupt stack defined in pcgen.asm */
  46. extern void (*Shutdown[])();    /* List of functions to call at shutdown */
  47. extern char Mtasker;    /* Type of multitasker, if any */
  48.  
  49. /* In 8250.c: */
  50. void asytimer __ARGS((void));
  51.  
  52. /* In scc.c: */
  53. void scctimer __ARGS((void));
  54. void sccstop __ARGS((void));
  55.  
  56. /* In pc.c: */
  57. void clrbit __ARGS((unsigned port,char bits));
  58. void ctick __ARGS((void));
  59. INTERRUPT  (*getirq __ARGS((unsigned int)) ) __ARGS((void));
  60. void freescreen __ARGS((struct session *sp));
  61. int getmask __ARGS((unsigned irq));
  62. void ioinit __ARGS((void));
  63. void iostop __ARGS((void));
  64. void kbint __ARGS((void));
  65. int kbread __ARGS((void));
  66. int maskoff __ARGS((unsigned irq));
  67. int maskon __ARGS((unsigned irq));
  68. void newscreen __ARGS((struct session *sp));
  69. void pctick __ARGS((void));
  70. void setbit __ARGS((unsigned port,char bits));
  71. int setirq __ARGS((unsigned irq,INTERRUPT (*handler) __ARGS((void))));
  72. void sysreset __ARGS((void));
  73. void systick __ARGS((void));
  74. void writebit __ARGS((unsigned port,char mask,int val));
  75. long bioscnt __ARGS((void));
  76.  
  77. /* In pcgen.asm: */
  78. INTERRUPT btick __ARGS((void));
  79. void chktasker __ARGS((void));
  80. void chtimer __ARGS((INTERRUPT (*)()));
  81. unsigned long divrem __ARGS((int32 dividend,int16 divisor));
  82. int16 getss __ARGS((void));
  83. void giveup __ARGS((void));
  84. int kbraw __ARGS((void));
  85. int16 longdiv __ARGS((int16 divisor,int n,int16 *dividend));
  86. int16 longmul __ARGS((int16 multiplier,int n,int16 *multiplicand));
  87. INTERRUPT nullvec __ARGS((void));
  88. void uchtimer __ARGS((void));
  89. int16 clockbits __ARGS((void));
  90.  
  91. /* In stopwatch.asm: */
  92. void swstart __ARGS((void));
  93. int16 stopval __ARGS((void));
  94.  
  95. /* In sw.c: */
  96. void swstop __ARGS((int n));
  97.  
  98. /* In command.asm: */
  99. int start_back __ARGS((void));
  100. int stop_back __ARGS((void));
  101.  
  102. #endif    /* _PC_H */
  103.